1. Field of the Invention
The present invention relates to a packet receiver advantageously applicable to a speech transmission and receipt system of the type sending a speech signal in the form of packets and decoding the packets to thereby reproduce the original speech signal, and a packet receiving method using the same.
2. Description of the Background Art
In a speech transmission and receipt system of the type transferring packets, a packet transmitter digitizes a speech signal input thereto, temporarily stores the resulting speech data, and sequentially codes the speech data frame by frame. Further, the packet transmitter packetizes the frame-by-frame coded speech data. Specifically, the packet transmitter generally stores the coded speech data until they reach a preselected amount, and then adds header information to the speech data of each frame to thereby packetize the speech data. The packetized speech data are sent to a packet receiver via a communication network.
The packet receiver temporarily stores the packets received from the packet transmitter and executes a procedure inverse to the procedure of the packet transmitter. Specifically, the packet receiver depacketizes the packet data, decodes the resulting data on a frame basis to thereby produce speech data, and transforms the decoded data to an analog speech signal.
So long as packet transmission conditions are ideal, the packets are sent without any loss and implement ideal speech communication free from the interruption or the skip of a speech. The interruption and the skip of a speech respectively refer to intermittent interruptions occurring in a speech output from the packet receiver and a continuous loss of the speech that makes the speech hard to follow.
However, ideal packet transmission stated above is rarely achievable for the following reasons. Traffic on a packet communication network varies every moment because a number of users access the network at the same time. Actual packet communication is dependent on the variation of the traffic, so that the transmission time of the network is not constant. As a result, some of the packets sent from the packet transmitter arrive at the packet receiver with delays. In the worst case, some packets are practically lost while being transferred via the network. The delays cause the intervals between consecutive packets received by the packet receiver to vary, i.e., bring about jitter. Consequently, packets expected to arrive at the packet receiver are lost, resulting in the interruption of a speech. When a packet or a frame is lost, an error frame may be generated on the basis of frame data immediately preceding the above frame in order to maintain the continuity of sound. Even this kind of scheme, however, cannot prevent the quality of reproduced sound from being degraded.
The delay of a received packet makes, e.g., a buffer included in the packet receiver idle for a moment. Such delays sequentially accumulate and appear as delays from preselected times for reproduction during processing following data read-out. Let the idle state of the buffer ascribable to the accumulation of delays be referred to as an idle buffer state occurring when a read request is generated, in distinction from usual idle states occurring at preselected intervals between preselected data reading times. The above idle buffer state interrupts a speech and aggravates the delay.
Beside the packet delay, a speech packet and therefore speech data is lost in the worst case, resulting in the skip of a speech. The skip, however, saves time and thereby cancels the delay accordingly.
Japanese patent laid-open publication Nos. 306697/1995 and 334191/1995 (Prior Art Documents 1 and 2 hereinafter, respectively), for example, teach measures against jitter. Japanese patent laid-open publication No. 285213/1998 (Prior Art Document 3 hereinafter), for example, proposes measures against jitter and packet losses.
Specifically, Prior Art Document 1 includes a step of picking up only reproducible frames out of received packets, which are to be discarded, between processing for temporarily storing received packets and processing for decoding data. For this purpose, reproduced frames or frame numbers attached to the frames are continuously counted up to the end of packet communication. This, however, results in an enormous count when packet communication is held over a long period of time, and therefore needs an exclusive calculator and a storage capable of storing an enormous numerical value. Prior Art Document 1 therefore increases the system cost to a noticeable degree.
Prior Art Document 2 copes with jitter by executing time domain compression between decoding and temporary speech data storage. Specifically, after the decoding of received packets, time domain compression is executed in such a manner as to cancel soundless portions ascribable to packet delays. The time domain compression, however, requires a prohibitive amount of calculations and extremely high calculation performance. Moreover, Prior Art Document 2 stores a packet delay or idle state and executes time domain compression, which corresponds to the delay, with speech data derived from the following received packet. This procedure involves the storage of a delay and calculations for allotting compression ratios to speech data. Consequently, Prior Art Document 2 critically increases the cost of the packet receiver and is apt to further increase the amount of calculations.
The measure taught in Prior Art Document 3 against jitter and packet losses causes a packet transmitter to code and send only sound portions and causes a packet receiver to feed a single dummy packet for decoding when a packet delay or a packet loss occurs. Specifically, decoding is effected with a single dummy frame without waiting for the arrival of the next packet at the packet receiver. A packet arrived at the packet receiver while decoding is under way is dealt with as a processed packet and discarded in order to obviate a delay. A problem with Prior Art Document 3 is that the insertion ratio varies over a broad range in dependence on the capacity of a receipt buffer for storing received packets. For example, when the capacity of a receipt buffer is reduced to reduce the initial delay, many of received packets are delayed and increase the insertion ratio of the dummy packet, critically lowering the quality of a reproduced speech. Moreover, Prior Art Document 3 does not show or describe how the capacity of a receipt buffer is determined specifically. The measure taught in Prior Art Document 3 appears to be difficult to practice without resorting to the prohibitive repetition of a trial and error procedure.